package com.kgc.app.service;

import com.github.pagehelper.Page;
import com.github.pagehelper.PageInfo;
import com.kgc.app.condition.AppInfoCondition;
import com.kgc.app.dto.AppInfoDto;
import com.kgc.app.pojo.AppInfo;

import java.util.List;

public interface AppInfoService {

   /**
    * 根据条件查询APP相关信息
    * @param appInfoCondition  查询条件
    * @return  带分页的信息
    */
   PageInfo<AppInfoDto> selectAppInfoByCondition(AppInfoCondition appInfoCondition);

   PageInfo<AppInfoDto> selectAppInfoByCondition02(AppInfoCondition appInfoCondition);

   /**
    * 根据apk名称查询是否有相同的名称
    * @param APKName
    * @return  如果存在相同的名称 返回false，不存在相同的名称返回true
    */
   boolean findAppinfoByAPKName(String APKName);

   /**
    * 添加APP信息
    * @param appInfo
    * @return
    */
   boolean addAppInfo(AppInfo appInfo);

   /**
    * 根据主键查询，用于修改页面的回显
    * @param id
    * @return
    */
   AppInfo viewAppInfo(Long id);

   /**
    * 根据主键修改APP信息
    * @param appInfo
    * @return
    */
   Integer updateAppInfo(AppInfo appInfo);

   /**
    * 根据主键删除APP信息
    * @param id
    * @return
    */
   boolean deleteAppInfoById(Long id);

   /**
    * 根据主键查询APP对应的信息
    * @param id
    * @return
    */
   AppInfoDto selectAppInfoDtoById(Long id);


}
